/*
 * comm_struct.h
 *
 *  Created on: Dec 15, 2011
 *      Author: sanglei
 */

#ifndef COMM_STRUCT_H_
#define COMM_STRUCT_H_

#include <stdio.h> //定义了size_t 为 long unsigned int
#include <stdlib.h> // free() malloc() 函数的头文件
#include <string.h> //memcpy() 函数的头文件

//定义链表节点
typedef struct Node {
	void * pvalue;//通用类型，故这样表示。
	struct Node * next;
}Node;//给struct node 起了个别名

//定义栈结构//这样定义结构体变量，初始时都是"野值"
typedef struct{
	Node * head;//栈顶指针
	size_t byte;//数值的字节数(用于还原数值的真实类型)
}Stack;

typedef struct{
	size_t byte_len;//数组中内容的字节长度
	void * top;//栈顶指针
	void *parray;//数组内存空间

}Stack_Array;


typedef struct{//队列结构
	size_t byte_len;
	Node *head,*rear;
}Queue;


#endif /* COMM_STRUCT_H_ */
